AWS re:Invent ふりかえり勉強会「クラスメソッド re:Growth 2024 東京」で Aurora DSQL を話してきました!
ウィスキー、シガー、パイプをこよなく愛する大栗です。
クラスメソッドで毎年開催している re:Invent の振り返り勉強会である「クラスメソッド re:Growth 2024 東京」で Aurora DSQL について話してきたのでレポートします!(実は発表前に書いているので、どうなったのか分かってないです)
Aurora DSQL をちゃんと話します!
一番良いたかったことはこれです。
Amazon Aurora DSQL を
一言で説明すると
“DynamoDB for SQL Applications”
DynamoDB の様に Lambda などから簡単にアクセスできる SQL データベースということです。小規模なアプリケーションでの利用もマッチするものだと理解しています。
Aurora DSQL の特徴として一番重要なのは 楽観的同時実行制御 だと考えています。ロックが無いため競合していても待たずにコミット時にエラーが発生してしまいます。そのため競合が発生したときのためにリトライ処理が必要になることが Aurora Limitless Database を含む一般的な RDBMS と異なります。アプリケーション側でのリトライ対応を行いましょう。リトライでは指数バックオフとジッターを組み合わせて実行することが推奨されています。
またクエリのレイテンシは高速ですが、競合が発生した場合にはリトライを行うことが前提となり環境まで大きな時間がかかる場合があります。そのため他社サービスとの比較はあまり意味がないかもしれないので注意が必要です。
さいごに
楽観的同時実行制御についてはデモも行いました(発表前に書いているので、ちゃんとデモを行えるのか現時点では分かっていないです)。